11 research outputs found

    Software-based dialogue systems: Survey, taxonomy and challenges

    Get PDF
    The use of natural language interfaces in the field of human-computer interaction is undergoing intense study through dedicated scientific and industrial research. The latest contributions in the field, including deep learning approaches like recurrent neural networks, the potential of context-aware strategies and user-centred design approaches, have brought back the attention of the community to software-based dialogue systems, generally known as conversational agents or chatbots. Nonetheless, and given the novelty of the field, a generic, context-independent overview on the current state of research of conversational agents covering all research perspectives involved is missing. Motivated by this context, this paper reports a survey of the current state of research of conversational agents through a systematic literature review of secondary studies. The conducted research is designed to develop an exhaustive perspective through a clear presentation of the aggregated knowledge published by recent literature within a variety of domains, research focuses and contexts. As a result, this research proposes a holistic taxonomy of the different dimensions involved in the conversational agents’ field, which is expected to help researchers and to lay the groundwork for future research in the field of natural language interfaces.With the support from the Secretariat for Universities and Research of the Ministry of Business and Knowledge of the Government of Catalonia and the European Social Fund. The corresponding author gratefully acknowledges the Universitat Politècnica de Catalunya and Banco Santander for the inancial support of his predoctoral grant FPI-UPC. This paper has been funded by the Spanish Ministerio de Ciencia e Innovación under project / funding scheme PID2020-117191RB-I00 / AEI/10.13039/501100011033.Peer ReviewedPostprint (author's final draft

    Chatbots4Mobile: Feature-oriented knowledge base generation using natural language

    Get PDF
    Chatbots4Mobile is a research project from the GESSI research group (UPC-BarcelonaTech) which aims at designing and developing a task oriented, knowledge based conversational agent to support mobile users in the process of managing and integrating the functionalities exposed by their own application portfolio. To support the design of the required knowledge base, the project focuses on the application of Natural Language Processing (NLP) techniques to infer extended knowledge about the features exposed by a subset of mobile applications, including feature extraction from app-related documents, syntactic and semantic similarity analysis between features, and intent/entity classification focused on functionality identification from user requests. As next steps, we are focusing on the evaluation of embedded linguistic knowledge in large language models, as well as the application of granular sentiment analysis techniques to discern biased documents and process sentiment-based user feedback.With the support from the Secretariat for Universities and Research of the Ministry of Business and Knowledge of the Government of Catalonia and the European Social Fund. This paper has been funded by the Spanish Ministerio de Ciencia e Innovación under project / funding scheme PID2020-117191RB-I00 / AEI/10.13039/501100011033.Peer ReviewedPostprint (published version

    OpenReq-DD: A requirements dependency detection tool

    Get PDF
    Requirements Engineering (RE) is one of the most critical phases insoftware development. Analyzing requirements data is a laborious taskperformed by expert stakeholders using manual processes, as there areno standard automatic tools to handle this issue in a more efficientway. The purpose of this paper is to summarize the approach of theOpenReq-DD dependency detection tool developed at the OpenReqproject, which allows an automatic requirement dependency detectionapproach. The core of this proposal is based on an ontology whichdefines dependency relations between specific terminologies related tothe domain of the requirements. Using this information, it is possible toapply Natural Language Processing techniques to extract meaning fromthese requirements and relations, and Machine Learning techniques toapply conceptual clustering, with the major purpose of classifying theserequirements into the defined ontology.Peer ReviewedPostprint (published version

    TransFeatEx: a NLP pipeline for feature extraction

    Get PDF
    Mobile app stores provide centralized access to a large data set of mobile app related natural language textual data, including developer’s documentation (e.g., descriptions, changelogs) and user-generated data (e.g., user reviews). Motivated by this context, multiple studies have focused on data-driven elicitation processes for the automatic extraction of the set of features exposed by a catalogue of applications and the inferred, extended knowledge that can be derived from this information. Moreover, with the emerging and generalization of large language models, traditional linguistic-based approaches can be significantly improved by the potential of the knowledge embedded in this kind of models. In this paper, we present TransFeatEx, a NLP-based feature extraction pipeline that combines the use of a RoBERTa-based model with the application of consolidated syntactic and semantic techniques. The pipeline is designed as a customizable, standalone service to be used either as a playground, experimentation tool or as a software component to be embedded into a third-party software system for batch-processing large document corpora. An example of a demo plan is showcased here: https://youtu.be/gfFyi_i_uTwWith the support from the Secretariat for Universities and Research of the Ministry of Business and Knowledge of the Government of Catalonia and the European Social Fund. This paper has been funded by the Spanish Ministerio de Ciencia e Innovación under project / funding scheme PID2020-117191RB-I00 / AEI/10.13039/501100011033.Peer ReviewedPostprint (published version

    Improved management of issue dependencies in issue trackers of large collaborative projects

    Get PDF
    Issue trackers, such as Jira, have become the prevalent collaborative tools in software engineering for managing issues, such as requirements, development tasks, and software bugs. However, issue trackers inherently focus on the lifecycle of single issues, although issues have and express dependencies on other issues that constitute issue dependency networks in large complex collaborative projects. The objective of this study is to develop supportive solutions for the improved management of dependent issues in an issue tracker. This study follows the Design Science methodology, consisting of eliciting drawbacks and constructing and evaluating a solution and system. The study was carried out in the context of The Qt Company's Jira, which exemplifies an actively used, almost two-decade-old issue tracker with over 100,000 issues. The drawbacks capture how users operate with issue trackers to handle issue information in large, collaborative, and long-lived projects. The basis of the solution is to keep issues and dependencies as separate objects and automatically construct an issue graph. Dependency detections complement the issue graph by proposing missing dependencies, while consistency checks and diagnoses identify conflicting issue priorities and release assignments. Jira's plugin and service-based system architecture realize the functional and quality concerns of the system implementation. We show how to adopt the intelligent supporting techniques of an issue tracker in a complex use context and a large data-set. The solution considers an integrated and holistic system view, practical applicability and utility, and the practical characteristics of issue data, such as inherent incompleteness.The work presented in this paper has been conducted within the scope of the Horizon 2020 project OpenReq, which is supported by the European Union under Grant Nr. 732463. We are grateful for the provision of the Finnish computing infrastructure to carry out the tests (persistent identifier urn:nbn:fi:research-infras-2016072533). This paper has been funded by the Spanish Ministerio de Ciencia e Innovacionúnder project / funding scheme PID2020-117191RB-I00 / AEI/10.13039/501100011033.Peer ReviewedPostprint (published version

    A Self-Adaptive heterogeneous and distributed monitoring system

    No full text
    El monitoratge consisteix en la tècnica d’observació i control dels sistemes software amb l’objectiu de garantir la seva fiabilitat, la qualitat del servei (Quality of Service, QoS), la seguretat i altres característiques dels sistemes software pròpies de la seva execució en temps real. El monitoratge proporciona, entre d’altres resultats, la informació que permet a un sistema software autoadaptable modificar la seva execució davant la violació d’uns certs valors sobre aquestes característiques, tals com per exemple un increment elevat del temps de resposta d’un sistema o la detecció d’un nombre elevat d’errors per unitat de temps. De la mateixa manera, els sistemes de monitoratge (com a sistemes software que són) requereixen també poder adaptar la seva execució per satisfer la seva fiabilitat. En aquest context, com podem dotar a un sistema de monitoratge de capacitats autoadaptables? En base a aquesta premisa, aquest Treball de Final de Grau consisteix en el disseny i implementació d’un sistema de monitoratge autoadaptable, heterogeni i distribuït que integra un conjunt de monitors de naturalesa diversa i permet, mitjançant la gestió i adaptació de diagrames UML, la seva reconfiguració de forma automàtica. La proposta i el desenvolupament plantejats en aquest projecte es validen mitjançant casos d’ús reals i, en especial èmfasi, amb la seva integració dins el marc de SUPERSEDE, un projecte del programa Horizon 2020 enfocat a la gestió del cicle de vida dels serveis software i les aplicacions, amb l’objectiu de millorar l’experiència final de l’usuari en l’ús d’aquests sistemes.Software monitoring is the technique of controlling and observing real time behavior of software systems. Its main purpose is to achieve and to guarantee features such as reliability, Quality of Service (QoS), security and other characteristics related with the activity execution of this applications or software components. Monitoring produces and manages the information necessary to allow a self-adaptive software system to automatically adapt when there is a violation of some expected values on those characteristics. These include, i.e., an unusual increase of a software system response time, or exceeding a number of errors per time unit. However, for a monitoring system to be reliable, it has to be self-adaptive as well. In this case, how can we provide self-adaptive capabilities to a monitoring system? This project consists on the design and the implementation of a self-adaptive heterogeneous and distributed monitoring system that integrates different monitors of different nature and provides the functionality to automatically reconfigure them according to some criteria. This automatic adaptation will be performed by managing and supplying UML models describing the current monitoring system status and other possible configurations to be reconfigured with. The development presented in this project will be validated through real use cases, with special emphasis on the SUPERSEDE project, a research project of the Horizon 2020 program. This project is addressed to the management of the software services and applications life cycle, with the main purpose of improving the final user experience in the use of these systems

    A Self-Adaptive heterogeneous and distributed monitoring system

    No full text
    El monitoratge consisteix en la tècnica d’observació i control dels sistemes software amb l’objectiu de garantir la seva fiabilitat, la qualitat del servei (Quality of Service, QoS), la seguretat i altres característiques dels sistemes software pròpies de la seva execució en temps real. El monitoratge proporciona, entre d’altres resultats, la informació que permet a un sistema software autoadaptable modificar la seva execució davant la violació d’uns certs valors sobre aquestes característiques, tals com per exemple un increment elevat del temps de resposta d’un sistema o la detecció d’un nombre elevat d’errors per unitat de temps. De la mateixa manera, els sistemes de monitoratge (com a sistemes software que són) requereixen també poder adaptar la seva execució per satisfer la seva fiabilitat. En aquest context, com podem dotar a un sistema de monitoratge de capacitats autoadaptables? En base a aquesta premisa, aquest Treball de Final de Grau consisteix en el disseny i implementació d’un sistema de monitoratge autoadaptable, heterogeni i distribuït que integra un conjunt de monitors de naturalesa diversa i permet, mitjançant la gestió i adaptació de diagrames UML, la seva reconfiguració de forma automàtica. La proposta i el desenvolupament plantejats en aquest projecte es validen mitjançant casos d’ús reals i, en especial èmfasi, amb la seva integració dins el marc de SUPERSEDE, un projecte del programa Horizon 2020 enfocat a la gestió del cicle de vida dels serveis software i les aplicacions, amb l’objectiu de millorar l’experiència final de l’usuari en l’ús d’aquests sistemes.Software monitoring is the technique of controlling and observing real time behavior of software systems. Its main purpose is to achieve and to guarantee features such as reliability, Quality of Service (QoS), security and other characteristics related with the activity execution of this applications or software components. Monitoring produces and manages the information necessary to allow a self-adaptive software system to automatically adapt when there is a violation of some expected values on those characteristics. These include, i.e., an unusual increase of a software system response time, or exceeding a number of errors per time unit. However, for a monitoring system to be reliable, it has to be self-adaptive as well. In this case, how can we provide self-adaptive capabilities to a monitoring system? This project consists on the design and the implementation of a self-adaptive heterogeneous and distributed monitoring system that integrates different monitors of different nature and provides the functionality to automatically reconfigure them according to some criteria. This automatic adaptation will be performed by managing and supplying UML models describing the current monitoring system status and other possible configurations to be reconfigured with. The development presented in this project will be validated through real use cases, with special emphasis on the SUPERSEDE project, a research project of the Horizon 2020 program. This project is addressed to the management of the software services and applications life cycle, with the main purpose of improving the final user experience in the use of these systems

    RESim - Automated detection of duplicated requirements in software engineering projects

    Get PDF
    Collaborative software development experience in recent years proves that the management of large sets of requirements has become a critical issue. Among the main problems of requirements engineering, the detection and management of duplicated requirements is highlighted. If ignored, these redundancies may lead to the duplicity of tasks, which is a hazardous issue from a project management perspective. Moreover, the automation of this process and the standardized use of accurate, open-source tools are still at a state-of-the-art stage. Based on this scenario, we introduce RESim a software development proposal which integrates different techniques for the detection of duplicated requirements in an adaptive, scalable tool. RESim solution is based on a twofold objective approach: first, to deliver an easy-to-use, practical tool for duplicated requirements detection for requirements engineers; second, to provide an evaluation framework of different similarity detection algorithms for researchers. A video demonstration of a GUI component developed for user testing purposes is available here: https://youtu.be/A7dnLgWInMs.The work presented in this paper has been supported by the GENESIS project under the National Spanish Program for Research Aimed at the Challenges of Society (RETOS) 2016, contract TIN2016-79269-R.Peer ReviewedPostprint (published version

    Mobile feature-oriented knowledge base generation using knowledge graphs

    No full text
    Knowledge bases are centralized repositories used for developing knowledge-oriented information systems. They are essential for adaptive, specialized knowledge in dialogue systems, supporting up-to-date domain-specific discussions with users. However, designing large-scale knowledge bases presents multiple challenges in data collection and knowledge exploitation. Knowledge graphs provide various research opportunities by integrating decentralized data and generating advanced knowledge. Our contribution presents a knowledge base in the form of a knowledge graph for extended knowledge generation for mobile apps and features extracted from related natural language documents. Our work encompasses the knowledge graph completion and deductive and inductive knowledge requests. We evaluated the effectiveness and performance of these knowledge strategies, which can be used as on-demand knowledge requests used by third-party software systems.With the support from the Secretariat for Universities and Research of the Ministry of Business and Knowledge of the Government of Catalonia and the European Social Fund. This paper has been funded by the Spanish Ministerio de Ciencia e Innovación under project / funding scheme PID2020-117191RB-I00 / AEI/10.13039/501100011033.Peer ReviewedPostprint (author's final draft

    Integrating adaptive mechanisms into mobile applications exploiting user feedback

    Get PDF
    Mobile applications have become a commodity in multiple daily scenarios. Their increasing complexity has led mobile software ecosystems to become heterogeneous in terms of hardware specifications, features and context of use, among others. For their users, fully exploiting their potential has become challenging. While enacting software systems with adaptation mechanisms has proven to ease this burden from users, mobile devices present specific challenges related to privacy and security concerns. Nevertheless, rather than being a limitation, users can play a proactive role in the adaptation loop by providing valuable feedback for runtime adaptation. To this end, we propose the use of chatbots to interact with users through a human-like smart conversational process. We depict a work-in-progress proposal of an end-to-end framework to integrate semi-automatic adaptation mechanisms for mobile applications. These mechanisms include the integration of both implicit and explicit user feedback for autonomous user categorization and execution of enactment action plans. We illustrate the applicability of such techniques through a set of scenarios from the Mozilla mobile applications suite. We envisage that our proposal will improve user experience by bridging the gap between users’ needs and the capabilities of their mobile devices through an intuitive and minimally invasive conversational mechanism.This work has been partially supported by AGAUR, code 2017-SGR-1694. The corresponding author gratefully acknowledges the Universitat Politècnica de Catalunya and Banco Santander for the financial support of his predoctoral grant FPI-UPC.Peer ReviewedPostprint (author's final draft
    corecore